port: keep Codex account labels private on Windows - #491
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Thermo-nuclear code-quality review (Oracle-coordinated read-only swarm) Verdict: PASS for merge readiness; no merge-blocking thermo finding. The privacy behavior is localized to the Codex account menu and covered in both Rust and React tests. Hidden labels no longer expose email-like metadata, and the opaque ordinal mapping is stable across refresh order. Two non-blocking maintainability observations are recorded for follow-up: (1) the ordinal policy is implemented in both apps/desktop-tauri/src-tauri/src/tray_accounts.rs:217 and apps/desktop-tauri/src/components/CodexAccountsMenu.tsx:39 with slightly different ID normalization; document or centralize that bridge contract to prevent drift, and (2) the new Account N label is hardcoded in both surfaces rather than using the surrounding localization path. Neither is a merge blocker for this scoped privacy fix. |
|
Superseding thermo verdict — BLOCKED. Oracle’s final adjudication confirms that the Rust tray path at tray_accounts.rs:204-233 and the React path around CodexAccountsMenu.tsx:47-65 and 165-170 independently implement the privacy-critical UUID-to-ordinal policy and silently manufacture fallback ordinals. Compute the opaque ordinal projection once in the Rust account domain, bridge it to React, reuse it in the native tray, and remove both fallbacks. Hardcoded English Account N is secondary cleanup; the duplicated policy is the merge blocker. |
|
Thermo follow-up: blocker fixed and validated. Oracle had blocked this PR because Rust tray code and React code each derived privacy-safe account ordinals. Commit Validation: account Rust ordinal test 1/1; Tauri tray-account tests 4/4; Codex account React tests 15/15; TypeScript Oracle post-fix verdict: PASS. Hosted CI and Windows CUA evidence remain separate process gates. |
|
Windows UI validation note: the repaired source passed TypeScript, Vite, and direct Tauri debug compilation, producing |
Summary
Ports upstream commit
4cfb60692bdd8cfbba7a491e94bb121b59a835a5:fix: keep Codex account switcher labels private and distinct (#3551).When Hide Personal Info is enabled, Codex account labels and tooltips now use stable opaque
Account Nvalues in both the React account menu and the Windows native tray menu. Privacy-off display behavior is preserved.Scope
Included:
Excluded:
Validation
Passed:
pnpm test— 60 files, 350 testspnpm build— locale drift, TypeScript, and Vite build passedpnpm --dir apps/desktop-tauri run tauri:build:debug— fresh Windows debug binary built attarget/debug/codexbar-desktop-tauri.execargo fmt --all -- --checkgit diff --checkNotes:
link.exeto the GNU link wrapper (link: extra operand ... .o). No Rust assertion failure was observed; toolchain repair is outside this PR.Review boundary
Please review only these three files:
apps/desktop-tauri/src/components/CodexAccountsMenu.tsxapps/desktop-tauri/src/components/CodexAccountsMenu.test.tsxapps/desktop-tauri/src-tauri/src/tray_accounts.rsBase branch:
port/upstream-0.60.0Head branch:
port/micro-0.60.0-codex-privacyKeep this PR open and unmerged.